package com.woniu.carrent.pojo;



import java.io.Serializable;

import java.util.Date;
import java.util.List;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModelProperty;
import jakarta.validation.constraints.NotBlank;
import jakarta.validation.constraints.NotNull;
import jakarta.validation.constraints.Size;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.hibernate.validator.constraints.Length;
import org.springframework.format.annotation.DateTimeFormat;

/**
* 
* @TableName t_menu
*/
@NoArgsConstructor
@AllArgsConstructor
@Data
@TableName("t_menu")
public class TMenu implements Serializable {

    /**
    * 
    */
    @TableId(value = "menuid" ,type = IdType.AUTO)
    @NotNull(message="[]不能为空")
    @ApiModelProperty("")
    private Integer menuid;
    /**
    * 
    */
    @NotBlank(message="[]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("")
    @Length(max= 255,message="编码长度不能超过255")
    private String menuname;
    /**
    * 
    */
    @NotBlank(message="[]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("")
    @Length(max= 255,message="编码长度不能超过255")
    private String route;
    /**
    * 
    */
    @NotBlank(message="[]不能为空")
    @Size(max= 255,message="编码长度不能超过255")
    @ApiModelProperty("")
    @Length(max= 255,message="编码长度不能超过255")
    private String icon;
    /**
    * 
    */
    @ApiModelProperty("")
    private Integer parentid;
    /**
    * 
    */
    @NotNull(message="[]不能为空")
    @ApiModelProperty("")
    private Integer level;
    /**
    * 
    */
    @NotNull(message="[]不能为空")
    @ApiModelProperty("")
    private Integer utypeid;
    /**
    * 
    */
    @TableField(fill = FieldFill.INSERT)
    @JsonFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty("")
    private Date createTime;
    /**
    * 
    */
    @JsonFormat(pattern ="yyyy-MM-dd HH:mm:ss")
    @DateTimeFormat(pattern= "yyyy-MM-dd HH:mm:ss")
    @TableField(fill = FieldFill.INSERT_UPDATE)
    @ApiModelProperty("")
    private Date updateTime;
 private List<TMenu> children;//子菜单

}
